namespace ScrumSprintMonitor.Infrastructure
{
	#region #using Directives

	using System;
	using System.Collections.Generic;

	#endregion

	public interface IWorkItemObserver : IDisposable
	{
		IWorkItemStore WorkItemStore { get; }

		event EventHandler<WorkItemsUpdatedEventArgs> WorkItemsUpdated;
	}

	public class WorkItemsUpdatedEventArgs : EventArgs
	{
		private readonly ICollection<WorkItemChangeDescriptor> changesList;

		public WorkItemsUpdatedEventArgs(ICollection<WorkItemChangeDescriptor> changesList)
		{
			this.changesList = changesList;
		}

		public ICollection<WorkItemChangeDescriptor> ChangesList
		{
			get { return this.changesList; }
		}
	}
}